package com.internetCafes.spms.web.customer.mapper.msg;

import com.baomidou.mybatisplus.annotation.SqlParser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.internetCafes.spms.core.annotation.NoTentant;
import com.internetCafes.spms.web.customer.entity.msg.Msg;
import com.internetCafes.spms.web.customer.model.msg.MsgListDo;
import com.internetCafes.spms.web.customer.model.msg.MsgListPo;
import com.internetCafes.spms.web.customer.model.msg.MsgPagingDo;
import com.internetCafes.spms.web.customer.model.msg.MsgPagingPo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 平台消息表 Mapper 接口
 * </p>
 *
 * @author Zj
 * @since 2021-10-25
 */
@Mapper
public interface MsgMapper extends BaseMapper<Msg> {

    /**
     * 批量保存信息列表
     */
    @SqlParser(filter = true)
    @NoTentant
    boolean saveBatchNoSqlParser(@Param("msgList") List<Msg> msgList);

    /**
     * 消息分页
     *
     * @param page     分页page
     * @param pagingDo 自定义分页请求参数
     * @return 分页数据
     */
    Page<MsgPagingPo> poPaging(Page<Msg> page, @Param("pagingDo") MsgPagingDo pagingDo);

    /**
     * 列表
     *
     * @param listDo 列表
     * @return 消息列表
     */
    @SqlParser(filter = true)
    List<MsgListPo> list(@Param("listDo") MsgListDo listDo);
}
